package com.cheer.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.io.Serializable;
import java.util.Date;

/**
 * 订单表
 *
 * @author cheer
 */
@Data
@TableName("mall_order")
@Accessors(chain = true)
public class MallOrderEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId
    private Long id;
    /**
     * 编号
     */
    private String number;
    /**
     * 商品id
     */
    private Long productId;
    /**
     * 商品名称
     */
    private String productName;
    /**
     * 类型，1是普通商品，2是电子商品
     */
    private Integer type;
    /**
     * 兑换方式 1 积分 2 小红花
     */
    private Integer exchangeType;
    /**
     * 商品属性
     */
    private String attrValue;
    /**
     * 商品缩略图
     */
    private String thumbnailUrl;
    /**
     * 用户id
     */
    private Integer userId;
    /**
     * 收货人
     */
    private String receiver;
    /**
     * 联系电话
     */
    private String phone;
    /**
     * 收货地址
     */
    private String address;
    /**
     * 商户id
     */
    private Long shopId;
    /**
     * 价格
     */
    private BigDecimal price;
    /**
     * 积分
     */
    private Integer credit;

    private Boolean postage;

    private BigDecimal postagePrice;
    /**
     * 允许退款
     */
    private Boolean allowRefund;
    /**
     * 备注
     */
    private String remark;
    /**
     * 数量
     */
    private Integer quantity;
    /**
     * 快递信息
     */
    private String expressInfo;
    /**
     * 发货时间
     */
    private Date deliverTime;
    /**
     * 订单状态
     */
    private Integer status;
    /**
     * 退款状态
     */
    private Integer refundStatus;
    /**
     * 退款次数
     */
    private Integer refundCount;
    /**
     * 退款说明
     */
    @TableField("`explain`")
    private String explain;
    /**
     * 退款答复
     */
    private String reply;
    /**
     * 退款联系电话
     */
    private String refundPhone;
    /**
     * 申请时间
     */
    private Date applicationTime;
    /**
     * 处理时间
     */
    private Date processTime;
    /**
     * 虚拟类型
     */
    private Integer virType;
    /**
     * 电子编号
     */
    private String virNumber;
    /**
     * 凭证号
     */
    private String hexiaoNumber;

    private Date hexiaoTime;
    /**
     *
     */
    private Long salesroomId;

    private Boolean isSettle;
    /**
     *
     */
    @TableLogic
    private Integer isDeleted;
    /**
     *
     */
    private Date createTime;
    /**
     *
     */
    private Date updateTime;

}
